#ifndef WCDMA_SIGNAL_H
#define WCDMA_SIGNAL_H

#define NB_SYMBOL		64
#define SAMPLING_FACTOR		4
#define SF			8
#define FILTER_NB_CELL		64
#define DELAY_MAX		6
//#define OVSF_CODE_USER_1	{-1,-1,1,1,-1,-1,1,1}
//#define OVSF_CODE_USER_2	{-1,-1,1,1,1,1,-1,-1}

int Signal_I[(SF/2*NB_SYMBOL+DELAY_MAX/2)*SAMPLING_FACTOR] = {-2,1,1,-2,0,0,0,0,0,0,0,0,-1,0,0,-1,3,-1,-1,3,1,0,0,1,1,0,0,1,1,0,0,1,-3,1,1,-3,-1,0,0,-1,-1,0,0,-1,-1,0,0,-1,-1,0,0,-1,1,0,0,1,1,0,0,1,-1,0,0,-1,-1,0,0,-1,1,0,0,1,1,0,0,1,-1,0,0,-1,1,0,0,1,-1,0,0,-1,-1,0,0,-1,1,0,0,1,1,0,0,1,-1,0,0,-1,-1,0,0,-1,1,0,0,1,1,0,0,1,3,-1,-1,3,3,-1,-1,3,-1,0,0,-1,-1,0,0,-1,1,0,0,1,1,0,0,1,-1,0,0,-1,-1,0,0,-1,1,0,0,1,1,0,0,1,-1,0,0,-1,1,0,0,1,-1,0,0,-1,-1,0,0,-1,1,0,0,1,-3,1,1,-3,-1,0,0,-1,-1,0,0,-1,-1,0,0,-1,3,-1,-1,3,1,0,0,1,1,0,0,1,1,0,0,1,-3,1,1,-3,-1,0,0,-1,-1,0,0,-1,-1,0,0,-1,1,0,0,1,-1,0,0,-1,-1,0,0,-1,1,0,0,1,-1,0,0,-1,1,0,0,1,1,0,0,1,-1,0,0,-1,-1,0,0,-1,1,0,0,1,1,0,0,1,-1,0,0,-1,1,0,0,1,3,-1,-1,3,3,-1,-1,3,-1,0,0,-1,1,0,0,1,-1,0,0,-1,-1,0,0,-1,1,0,0,1,-3,1,1,-3,-1,0,0,-1,-1,0,0,-1,-1,0,0,-1,-1,0,0,-1,1,0,0,1,1,0,0,1,-1,0,0,-1,1,0,0,1,3,-1,-1,3,3,-1,-1,3,-1,0,0,-1,-3,1,1,-3,-1,0,0,-1,-1,0,0,-1,-1,0,0,-1,1,0,0,1,-1,0,0,-1,-1,0,0,-1,1,0,0,1,1,0,0,1,3,-1,-1,3,3,-1,-1,3,-1,0,0,-1,-3,1,1,-3,-1,0,0,-1,-1,0,0,-1,-1,0,0,-1,1,0,0,1,3,-1,-1,3,3,-1,-1,3,-1,0,0,-1,-3,1,1,-3,-1,0,0,-1,-1,0,0,-1,-1,0,0,-1,1,0,0,1,-1,0,0,-1,-1,0,0,-1,1,0,0,1,1,0,0,1,3,-1,-1,3,3,-1,-1,3,-1,0,0,-1,-1,0,0,-1,-3,1,1,-3,-3,1,1,-3,1,0,0,1,-1,0,0,-1,1,0,0,1,1,0,0,1,-1,0,0,-1,-1,0,0,-1,1,0,0,1,1,0,0,1,-1,0,0,-1,1,0,0,1,3,-1,-1,3,3,-1,-1,3,-1,0,0,-1,-1,0,0,-1,1,0,0,1,1,0,0,1,-1,0,0,-1,-1,0,0,-1,1,0,0,1,1,0,0,1,-1,0,0,-1,-1,0,0,-1,1,0,0,1,1,0,0,1,-1,0,0,-1,-3,1,1,-3,-1,0,0,-1,-1,0,0,-1,-1,0,0,-1,3,-1,-1,3,1,0,0,1,1,0,0,1,1,0,0,1,1,0,0,1,-1,0,0,-1,-1,0,0,-1,1,0,0,1,1,0,0,1,-1,0,0,-1,-1,0,0,-1,1,0,0,1,-1,0,0,-1,-3,1,1,-3,-3,1,1,-3,1,0,0,1,-1,0,0,-1,1,0,0,1,1,0,0,1,-1,0,0,-1,1,0,0,1,3,-1,-1,3,3,-1,-1,3,-1,0,0,-1,1,0,0,1,-1,0,0,-1,-1,0,0,-1,1,0,0,1,-1,0,0,-1,-3,1,1,-3,-3,1,1,-3,1,0,0,1,1,0,0,1,-1,0,0,-1,-1,0,0,-1,1,0,0,1,-1,0,0,-1,1,0,0,1,1,0,0,1,-1,0,0,-1,-1,0,0,-1,1,0,0,1,1,0,0,1,-1,0,0,-1,3,-1,-1,3,1,0,0,1,1,0,0,1,1,0,0,1,-1,0,0,-1,1,0,0,1,1,0,0,1,-1,0,0,-1,1,0,0,1,-1,0,0,-1,-1,0,0,-1,1,0,0,1,1,0,0,1,-1,0,0,-1,-1,0,0,-1,1,0,0,1,1,0,0,1,-1,0,0,-1,-1,0,0,-1,1,0,0,1,-1,0,0,-1,-3,1,1,-3,-3,1,1,-3,1,0,0,1,1,0,0,1,3,-1,-1,3,3,-1,-1,3,-1,0,0,-1,-3,1,1,-3,-1,0,0,-1,-1,0,0,-1,-1,0,0,-1,1,0,0,1,-1,0,0,-1,-1,0,0,-1,1,0,0,1,1,0,0,1,-1,0,0,-1,-1,0,0,-1,1,0,0,1,-1,0,0,-1,1,0,0,1,1,0,0,1,-1,0,0,-1,1,0,0,1,3,-1,-1,3,3,-1,-1,3,-1,0,0,-1,-1,0,0,-1,-3,1,1,-3,-3,1,1,-3,1,0,0,1,1,0,0,1,3,-1,-1,3,3,-1,-1,3,-1,0,0,-1,-3,1,1,-3,-1,0,0,-1,-1,0,0,-1,-1,0,0,-1,1,0,0,1,1,0,0,1,1,0,0,1};

int Signal_Q[(SF/2*NB_SYMBOL+DELAY_MAX/2)*SAMPLING_FACTOR] = {-3,1,1,-3,1,0,0,1,-1,0,0,-1,1,0,0,1,3,-1,-1,3,1,0,0,1,1,0,0,1,-1,0,0,-1,-3,1,1,-3,-1,0,0,-1,-1,0,0,-1,1,0,0,1,-3,1,1,-3,3,-1,-1,3,-1,0,0,-1,1,0,0,1,-3,1,1,-3,3,-1,-1,3,-1,0,0,-1,1,0,0,1,-1,0,0,-1,1,0,0,1,-3,1,1,-3,3,-1,-1,3,-1,0,0,-1,1,0,0,1,-3,1,1,-3,3,-1,-1,3,1,0,0,1,3,-1,-1,3,3,-1,-1,3,-3,1,1,-3,1,0,0,1,-1,0,0,-1,3,-1,-1,3,-3,1,1,-3,1,0,0,1,-1,0,0,-1,3,-1,-1,3,-3,1,1,-3,3,-1,-1,3,-3,1,1,-3,1,0,0,1,-1,0,0,-1,-3,1,1,-3,-1,0,0,-1,-1,0,0,-1,1,0,0,1,3,-1,-1,3,1,0,0,1,1,0,0,1,-1,0,0,-1,-3,1,1,-3,-1,0,0,-1,-1,0,0,-1,1,0,0,1,-1,0,0,-1,1,0,0,1,-3,1,1,-3,3,-1,-1,3,-3,1,1,-3,3,-1,-1,3,-1,0,0,-1,1,0,0,1,-3,1,1,-3,3,-1,-1,3,-1,0,0,-1,1,0,0,1,1,0,0,1,3,-1,-1,3,3,-1,-1,3,-3,1,1,-3,3,-1,-1,3,-3,1,1,-3,1,0,0,1,-1,0,0,-1,-3,1,1,-3,-1,0,0,-1,-1,0,0,-1,1,0,0,1,-3,1,1,-3,3,-1,-1,3,-1,0,0,-1,1,0,0,1,1,0,0,1,3,-1,-1,3,3,-1,-1,3,-3,1,1,-3,-3,1,1,-3,-1,0,0,-1,-1,0,0,-1,1,0,0,1,-1,0,0,-1,1,0,0,1,-3,1,1,-3,3,-1,-1,3,1,0,0,1,3,-1,-1,3,3,-1,-1,3,-3,1,1,-3,-3,1,1,-3,-1,0,0,-1,-1,0,0,-1,1,0,0,1,1,0,0,1,3,-1,-1,3,3,-1,-1,3,-3,1,1,-3,-3,1,1,-3,-1,0,0,-1,-1,0,0,-1,1,0,0,1,-1,0,0,-1,1,0,0,1,-3,1,1,-3,3,-1,-1,3,1,0,0,1,3,-1,-1,3,3,-1,-1,3,-3,1,1,-3,-1,0,0,-1,-3,1,1,-3,-3,1,1,-3,3,-1,-1,3,-3,1,1,-3,3,-1,-1,3,-1,0,0,-1,1,0,0,1,-3,1,1,-3,3,-1,-1,3,-1,0,0,-1,1,0,0,1,1,0,0,1,3,-1,-1,3,3,-1,-1,3,-3,1,1,-3,1,0,0,1,-1,0,0,-1,3,-1,-1,3,-3,1,1,-3,1,0,0,1,-1,0,0,-1,3,-1,-1,3,-3,1,1,-3,1,0,0,1,-1,0,0,-1,3,-1,-1,3,-3,1,1,-3,-3,1,1,-3,-1,0,0,-1,-1,0,0,-1,1,0,0,1,3,-1,-1,3,1,0,0,1,1,0,0,1,-1,0,0,-1,3,-1,-1,3,-3,1,1,-3,1,0,0,1,-1,0,0,-1,3,-1,-1,3,-3,1,1,-3,1,0,0,1,-1,0,0,-1,-1,0,0,-1,-3,1,1,-3,-3,1,1,-3,3,-1,-1,3,-3,1,1,-3,3,-1,-1,3,-1,0,0,-1,1,0,0,1,1,0,0,1,3,-1,-1,3,3,-1,-1,3,-3,1,1,-3,3,-1,-1,3,-3,1,1,-3,1,0,0,1,-1,0,0,-1,-1,0,0,-1,-3,1,1,-3,-3,1,1,-3,3,-1,-1,3,-1,0,0,-1,1,0,0,1,-3,1,1,-3,3,-1,-1,3,-3,1,1,-3,3,-1,-1,3,-1,0,0,-1,1,0,0,1,-3,1,1,-3,3,-1,-1,3,-1,0,0,-1,1,0,0,1,3,-1,-1,3,1,0,0,1,1,0,0,1,-1,0,0,-1,1,0,0,1,-1,0,0,-1,3,-1,-1,3,-3,1,1,-3,3,-1,-1,3,-3,1,1,-3,1,0,0,1,-1,0,0,-1,3,-1,-1,3,-3,1,1,-3,1,0,0,1,-1,0,0,-1,3,-1,-1,3,-3,1,1,-3,1,0,0,1,-1,0,0,-1,-1,0,0,-1,-3,1,1,-3,-3,1,1,-3,3,-1,-1,3,1,0,0,1,3,-1,-1,3,3,-1,-1,3,-3,1,1,-3,-3,1,1,-3,-1,0,0,-1,-1,0,0,-1,1,0,0,1,-1,0,0,-1,1,0,0,1,-3,1,1,-3,3,-1,-1,3,-1,0,0,-1,1,0,0,1,-3,1,1,-3,3,-1,-1,3,-3,1,1,-3,3,-1,-1,3,-1,0,0,-1,1,0,0,1,1,0,0,1,3,-1,-1,3,3,-1,-1,3,-3,1,1,-3,-1,0,0,-1,-3,1,1,-3,-3,1,1,-3,3,-1,-1,3,1,0,0,1,3,-1,-1,3,3,-1,-1,3,-3,1,1,-3,-3,1,1,-3,-1,0,0,-1,-1,0,0,-1,1,0,0,1,0,0,0,0,2,-1,-1,2,0,0,0,0};

int symbole_flow_user1[NB_SYMBOL] = {1,0,1,1,1,1,1,0,0,0,0,1,0,1,1,1,1,0,0,1,1,0,1,1,0,1,0,1,1,0,1,1,1,0,0,0,0,1,0,0,0,1,1,0,0,1,1,1,1,0,0,0,0,0,1,0,1,1,1,1,0,1,0,1};

int ovsf_code_user1[SF] = {-1,-1,1,1,-1,-1,1,1};

//fixed (6,26)
int FIR_COEFF[FILTER_NB_CELL] = {67108864,372,-323,252,-172,96,-34,-5,24,-26,17,-15,-6,-13,-10,15,0,3,6,-12,1,0,-13,8,-2,0,-2,-5,2,0,-2,3,-1,0,0,-1,1,0,1,0,-1,3,0,0,2,0,2,0,0,1,0,0,0,0,1,0,0,0,0,0,-1,0,0,0};

//int FIR_COEFF[FILTER_NB_CELL] = {1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0};

#endif
